Once a form has been resized vertically, font changes depending on width.
If one of the controls is a combo box, textbox font is not resized.
It is useful to understand the font resizing logic:
Most controls have width and height dimensions that may change independently, but only one font height. This makes font resizing not trivial. For example, if a control is resized and becomes twice as wide and half as tall, what should happen to the font?
The way we handle it is by keeping the original dimensions (design width, height, and font size) of each control. After a resize, we check how much the width and height have changed and use the smaller ratio to adjust the font size.
With this algorithm, if a control is resized and becomes twice as wide and half as tall, the new width ration is 2, and the new height ration is 1/2. So the new font size becomes 1/2 of the original.
If the controls becomes twice as wide but keeps the same height, the font does not change. If later the control becomes twice as tall, then both ratios are 2 and the font size is doubled.
This algorithm works well in practice, and has an important feature: The font size depends only on the control's orginal dimensions on its current dimensions. It doesn't matter how many times the form was resized, nor to what dimensions, before acquiring its current size.
================================================
DOCUMENTATION CHANGES 12 Oct 98
================================================
================================================
CORRECTED PROBLEMS 12 Oct 98
================================================
Eliminated pDispOCX and added try/catch block to GetControlInfo
================================================
WAIVERS (CUMULATIVE) 12 Oct 98
================================================
If an Elastic Light is in a user control, it will not resize anything.
Due to the way in which VB handles control arrays, only the first ElasticLight in a such an array will work. The others will do nothing, even if you delete the original one.
================================================
KNOWN PROBLEMS (CUMULATIVE) 12 Oct 98
================================================
An attempt to load the second instance in an array crashes VB5. This seems to be a bug in VB5 itself. It tries to execute an "invalid instruction". This works fine in VB4.